/**
 * @description sequelize 实例 连接 mysql 数据库
 * @author LI
 */
const Sequelize = require('sequelize')
const { MYSQL_CONF } = require('../conf/db')
const { isProd } =require('../utils/env')

const { host, user, password, database } = MYSQL_CONF
const conf = {
  host,
  dialect: 'mysql',
  timezone: '+08:00'
}

// 线上环境，使用连接池
if (isProd) {
  conf.pool = {
    max: 5, // 连接池中最大的连接数量
    min: 0, // 最小的
    idle: 10000 // 如果一个连接池 10s 之内没有被使用，则释放
  }
  conf.logging = false
}

const seq = new Sequelize(database, user, password, conf)

module.exports = seq
